E cient Generation of Local Index Sets for Distributed Arrays
نویسنده
چکیده
An important component of parallel programs with distributed data structures is local address generation for various index patterns. In this paper we present a general approach as well as two speci c algorithms for common problems to perform this task quickly on distributed arrays. Our algorithms usually run in O(joutputj) time, which is optimal. We have implemented our algorithms. When the problem size is small, they perform as well as or better than naive algorithms. When the problem size is large, they outperform naive algorithms by several orders of magnitude.
منابع مشابه
Compiling Array Statements for E cient Execution onDistributed - Memory Machines : Two - level
In languages such as High Performance Fortran (HPF), array statements are used for expressing data parallelism. In compiling array statements for distributed-memory machines, eecient enumeration of local index sets and communication sets is important. The virtual processor approach, among several other methods, has been proposed for eecient enumeration of these index sets. In this paper, using ...
متن کاملAn Implementation Framework for HPF Distributed Arrays on Message-Passing Parallel Computer Systems
Data parallel languages, like High Performance Fortran (HPF), support the notion of distributed arrays. However, the implementation of such distributed array structures and their access on message passing computers is not straightforward. This holds especially for distributed arrays that are aligned to each other and given a block-cyclic distribution. In this paper, an implementation framework ...
متن کاملCompiling Array Expressions for Efficient Execution on Distributed-Memory Machines
Array statements are often used to express data-parallelism in scientiic languages such as Fortran 90 and High Performance Fortran. In compiling array statements for a distributed-memory machine, eecient generation of communication sets and local index sets is important. We show that for arrays distributed block-cyclically on multiple processors, the local memory access sequence and communicati...
متن کاملCidre: programming with distributed shared arrays
A programming model that is widely approved today for large applications is parallel programming with shared variables. We propose an implementation of shared arrays on distributed memory architectures: it provides the user with an uniform addressing scheme while being e cient thanks to a logical paging technique and optimized communication mechanisms.
متن کاملResilience-Based Framework for Distributed Generation Planning in Distribution Networks
Events with low probability and high impact, which annually cause high damages, seriously threaten the health of the distribution networks. Hence, more attention to the issue of enhancing network resilience and continuity of power supply, feels more than ever, all over the world. In modern distribution networks, because of the increasing presence of distributed generation resources, an alternat...
متن کامل